package cn.yi.newsys.dao;

import java.sql.ResultSet;
import java.util.List;

import cn.yi.newsys.pojo.User;

/**
 * 用户数据访问接口
 * @author Lenovo
 *
 */
public interface UserDao {

	/**
	 * 保存用户对象到数据库中
	 * @param user
	 * @return
	 * @throws Exception
	 */
	public int save(User user) throws Exception;
	
	/**
	 * 根据用户名获取用户对象
	 * @return
	 * @throws Exception
	 */
	public User getUserByName(User user) throws Exception;
	
	
	/**
	 * 查询所有用户
	 * @return
	 */
	public List<User> getAllUser() ;
	
	/**
	 * 分页查询
	 * @param offset
	 * @param pageSize
	 * @return
	 */
	public List<User> queryAllUser(int offset , int pageSize) ;
	
	/**
	 * 分页查询2.0
	 * @param offset
	 * @param pageSize
	 * @param userName
	 * @param roleId
	 * @return
	 */
	public List<User> queryUserByPageNo(int offset , int pageSize , String userName , Integer roleId) ;
	
	/**
	 * 查询用户总数
	 * @return
	 */
	public int queryTotalCount(String userName, Integer roleId) ;
	
	/**
	 * 根据用户邮箱获取用户对象
	 * @param email
	 * @return
	 */
	public User queryUserByEmail(String email) ;
	
}
